popovermenu: Connect to right controller signal
authorTimm Bäder <mail@baedert.org>
Sun, 29 Nov 2020 08:42:18 +0000 (09:42 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 30 Nov 2020 14:22:57 +0000 (09:22 -0500)
leave is emitted before the new contains-pointer value is set, so the
signal handler wasn't working right.

gtk/gtkpopovermenu.c

index e0dd9a286cf5850373136de547a389f484bc0b53..30b0dd4c53ea9c0be19c149d588579f7414d2ea1 100644 (file)
@@ -309,7 +309,7 @@ gtk_popover_menu_init (GtkPopoverMenu *popover)
   gtk_widget_add_controller (GTK_WIDGET (popover), controller);
 
   controller = gtk_event_controller_motion_new ();
-  g_signal_connect (controller, "leave", G_CALLBACK (leave_cb), popover);
+  g_signal_connect (controller, "notify::contains-pointer", G_CALLBACK (leave_cb), popover);
   gtk_widget_add_controller (GTK_WIDGET (popover), controller);
 
   controllers = gtk_widget_list_controllers (GTK_WIDGET (popover), GTK_PHASE_CAPTURE, &n_controllers);